package org.haredot.filter;

import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.http.HttpFilter;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

/**
 * 该过滤 可以解决 跨域问题， 但要求 方法上必须添加一个 @CrossOrigin 才添加跨域操作。
 *
 */
public class CorsFilter extends HttpFilter {

    @Override
    protected void doFilter(HttpServletRequest request, HttpServletResponse response, FilterChain chain) throws IOException, ServletException {

        response.setHeader("Access-Control-Allow-Origin", "*");  // 支持传入 http://localhost:8888  等网址
        response.addHeader("Access-Control-Allow-Methods", "*");  // 允许访问的 请求方法
        response.addHeader("Access-Control-Allow-Headers", "*");  // 允许访问的 请求头信息

        // 请求继续向下执行
        chain.doFilter(request, response);

    }
}
